/** <!--------------------------------------------------------------------------------------------->
 * @file XXXXXXX.XXX
 *
 * GSvn - A Graphical Client for SVN
 * Copyright (C) 2012  Karl Krach, gsvn@bluespirit.la
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 <!---------------------------------------------------------------------------------------------> */


// -- includes --
#include "PlaceholderItem.h"
#include "GraphRevision.h"
#include "GraphBranch.h"


PlaceholderItem::PlaceholderItem( GraphBranch* pParent, GraphItem* pItem )
    : GraphItem("Placeholder for " + pItem->GetName()), m_pItem(pItem)
{
	setFlag( QGraphicsItem::ItemHasNoContents, false );
	//
	// Need this workaround to be able to react on QGraphicsItem::ItemChildAddedChange
	//
	setParentItem(pParent);
}

PlaceholderItem::~PlaceholderItem()
{
}

QRectF PlaceholderItem::boundingRect() const
{
	if( m_pItem )
	{
//		QRectF oRefRect = m_pItem->boundingRect();
//		return QRectF( oRefRect.x(), oRefRect.y()/2, oRefRect.width(), oRefRect.height()/2 );
		return m_pItem->boundingRect();
	}

	return QRectF();
}

void PlaceholderItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
{
	Q_UNUSED(painter);
	Q_UNUSED(option);
	Q_UNUSED(widget);
}
